Interference reduction by step function removal

ABSTRACT

Correcting a signal offset may include observing a finite duration signal y n  that comprises a representation of a mixture of a desired signal and an undesired signal. The undesired signal may include an offset component which may be modeled as comprising a step function u defined by unknown step function parameters. The unknown step function parameters may be estimated using, for example, a maximum likelihood method. Thereafter, y n  may be corrected based on the estimated step function parameters.

TECHNICAL FIELD

[0001] This invention relates to reception of a signal.

BACKGROUND

[0002] A received signal may include a desired signal from a desiredsource along with one or more undesired signals, such as, for example, anoise signal (e.g., additive noise such as white Gaussian noise) from anoise source, and/or an interfering signal from an interfering source(e.g., main-lobe or side-lobe energy of the interfering signal). Thereceived signal also may include an offset component such as, forexample, a DC (direct current) offset component, that may beundesirable. The offset component is an additional additive term and maybe a constant offset such as, for example, a DC offset, or may be anon-constant offset such as, for example, a step function.

[0003] To extract the desired signal from the received signal,characteristic parameters (e.g., data bits, frequency offset, DC offset)that model the received signal may be estimated. It may be desirable toperform preprocessing of the received signal prior to estimating thecharacteristic parameters, such as, for example, estimating the offsetand removing its effect. For example, the offset may be estimated as amean of the received signal and the mean may then be subtracted from thereceived signal.

[0004] The offset of the received signal may vary, for example, becauseof variation in the interfering signal. Such variations may cause themean of the received signal to provide a poor estimate of the signaloffset. Subtracting a poor estimate of the offset would then bias theestimates of the characteristic parameters and lead to inaccurateresults.

DESCRIPTION OF DRAWINGS

[0005]FIG. 1 is a schematic diagram of a communication system configuredto estimate and correct a signal having an offset that may be modeled asa step function.

[0006]FIG. 2 is a diagram illustrating two time-division,multiple-access (TDMA) users that are not aligned in time and that maycause interference which may appear as an additional signal offset inthe form of a step function.

[0007]FIG. 3 is a schematic diagram of a receiver that may be used withthe communication system of FIG. 1.

[0008]FIG. 4 is a diagram illustrating a step function that may be usedto model the signal offset of the system of FIG. 1.

[0009]FIG. 5 is a schematic flow diagram illustrating a systematicprocess for offset correcting a signal having an offset that may bemodeled as a step function by removing the step function of FIG. 4 fromthe received signal.

[0010] Like reference symbols in the various drawings indicate likeelements.

DETAILED DESCRIPTION

[0011] For illustrative purposes, a process is described forinterference reduction by offset correcting a signal, where the offsetmay be modeled as including a step function and the signal is correctedby removing the undesired step function. For clarity of exposition, thedescription generally proceeds from an account of general elements andtheir high level Air relationship to a detailed account of illustrativeroles, configurations, and components of the elements.

[0012] Referring to FIG. 1, a generalized system 100 (e.g., a globalsystem for mobile communications (GSM), a time-division, multiple-access(TDMA) system, or a frequency-division, multiple access (FDMA) system)may be used to receive a transmitted signal and to correct the offset ofthe received signal, where the signal offset may be modeled as includinga step function. Exemplary components of the system 100 are described ingreater detail below.

[0013] The system 100 of FIG. 1 generally includes a transmitter 110, areceiver 130 (e.g., a superheterodyne receiver, a dual-conversionsuperheterodyne receiver, or a direct conversion receiver), and achannel 150 that models how the environment has changed the transmittedsignal as perceived at the input port of the receiver.

[0014] In general, the transmitter 110 and the receiver 130 may includeany devices, systems, pieces of code, and/or combinations of these thatmay be used to transmit or receive, respectively, a waveform z(t) thatgenerally may be represented as

z(t)=Re{s(t)} cos (ω₀ t)−Im{s(t)} sin (ω₀ t)  (1.0)

[0015] In equation (1.0), s(t) may denote a complex signal, ω₀=2πf₀ maybe an associated carrier frequency, and Re{s(t)} and Im{s(t)} denoterespectively, real and imaginary parts of s(t).

[0016] A transmitter (e.g., transmitter 110) and/or a receiver (e.g.,receiver 130) generally may include, for example, a mixer (e.g., mixer135), a summer, a phase locked loop, a frequency synthesizer, a filter(e.g., filter 137), an oscillator (e.g., local oscillator 133), afrequency divider, a phase modulator, a down converter, an amplifier, aphase shifter, an analog-to-digital (A/D) converter or adigital-to-analog (D/A) converter (e.g., A/D converter 137), amicroprocessor (MPU), a digital signal processor (DSP), a computer, or asignal processing circuit, whether linear or nonlinear, analog ordigital, and/or any combination of these elements.

[0017] More specifically, receiver 130 may include a down-converter fordown-converting an input signal from radio frequency (RF) to baseband.The down-converter includes the local oscillator 133, the mixer 135, andthe filter 137 (e.g., an infinite impulse response filter, a finiteimpulse response filter). The receiver 130 also may include an A/Dconverter to generate a discrete signal from a continuous input and, forperforming step parameter estimation and offset correction, any device,system, or piece of code suitable for that task, such as, for example,step parameter estimator and signal offset corrector 139. The stepparameter estimator and signal offset corrector 139 may include, forexample, a microprocessor control unit (MCU), a digital signalprocessing (DSP) component, a computer, a piece of code, a signalprocessing circuit, whether linear or nonlinear, analog or digital,and/or any combination of these for use in performing the step parameterestimation and/or the offset correction, including step functionremoval.

[0018] The transmitter 110 transmits a signal z(t) over the channel 150.The channel 150 may include any medium over which a signal may becommunicated, such as, for example, an RF (radio frequency) portion ofthe electromagnetic spectrum, and or any other portion of theelectromagnetic spectrum. Associated with the channel are aninterference source 151 that generates an interference signal I(t) and anoise source 153 that generates a noise signal w(t). The noise source153 and the interference source 151 add noise w(t) and interferenceI(t), respectively, to z(t) to form a signal r(t) received by thereceiver.

[0019] The noise w(t) may include, for example, additive white Gaussiannoise that may have a zero or non-zero mean, while the interferingsignal I(t) may have very different characteristics before and after anevent that occurs within the burst. For example, if the interferingsource is due to a different TDMA user who is transmitting at the samefrequency as, but not time aligned with, the desired user, then theinterference may appear as being turned on and off during the burst formultiple bursts.

[0020]FIG. 2 illustrates one example of burst interference that maygenerate a signal offset that may be represented as including a stepfunction at the input of the data bit estimator 140. The data bitestimator 140 may include, for example, a matched filter, and/or adecoder such as, for example, a convolution decoder, and may performfunctions including de-interleaving or decoding, and further may providean estimate of data bits sent over the channel 150.

[0021] Note that the signals z(t) and I(t), as shown in FIG. 2, areillustrative only and may not represent certain characteristics ofactual physical signals. As shown, signal z(t) is transmitted in timeslot n of a first TDMA waveform 210, while the interference signal I(t)is transmitted in time slot m of a second TDMA waveform 220. Each TDMAwaveform is associated with different TDMA channels (e.g., different GSMbase stations with or without different hopping patterns).

[0022] The time slots for these first and second TDMA waveforms are nottime aligned with each other (e.g., each time slot of the second TDMAwaveform lags (or leads) the corresponding time slot of the first TDMAchannel by the same time increment of t₂−t₁). The interference signalI(t) also may have a power that is much greater than that of z(t) and acenter frequency different than the center frequency ω₀ of z(t), suchas, for example, a center frequency that approximates a harmonic of ω₀.

[0023] Because of the phase difference between the two TDMA waveforms,the transmission of signal I(t) at time t₂ may appear as interferencethat is turned on and off and is included in signal z(t). Moreover, aTDMA channel structure, such as, for example, a TDMA time-slotassignment methodology, may ensure that z(t) and I(t) transmit inlockstep, causing z(t) to experience burst interference from I(t)beginning at the same relative point in each time-slot in which z(t) istransmitted (e.g., t₂−t₁ from the beginning of each time slot).

[0024] Referring again to FIG. 1, the receiver 130 receives from thechannel a signal r(t) that includes z(t)+I(t)+w(t). A mixer 135 producesy(t) by mixing r(t) with the combination of a sinusoidal signal Ω(t)generated by local oscillator 133 with an attenuated version of r(t)that may leak into the local oscillator 133. The leakage of r(t) intothe local oscillator 133 is represented by multiplying the receivedsignal r(t) by an attenuation factor γ to produce γr(t), and thensumming γr(t) with the output Ω(t) of an ideal local oscillator 134.Leakage of r(t) into the local oscillator 133 causes y(t) to include thesignal mix of r(t)[Ω(t)+γr(t)].

[0025] Thereafter, y(t) passes through a low pass or band pass filterand/or an A/D (analog-to-digital) converter 137 (e.g., an integratorthat performs the functions of A/D conversion and low pass filtering) toproduce a discrete signal y_(n) that may include an undesirable offsetcomponent. Thereafter, y_(n) is processed further by step parameterestimator and offset corrector 139, which models the offset as a stepfunction and estimates parameters descriptive of the step function. Theoffset of y_(n) is corrected by offset corrector 139 based on theestimated step function parameters.

[0026]FIG. 3 illustrates a receiver 130 that may be used to implementthe system of FIG. 1, and in which a signal r(t) leaks into an ideallocal oscillator 334. The signal r(t) may include a transmitted signalz(t), a sum of interfering signals I(t), and additive white Gaussiannoise signal w(t). Signal z(t) may be represented as a real signalresulting from upconversion of a complex signal s(t):

z(t)=Re{s(t)} cos ω₀ t−Im{s(t)} sin ω₀ t  (1.1)

[0027] Due to the leakage of r(t) into the local oscillator 333, themixer 335 may not simply multiply r(t) by a sinusoid (e.g., A₀e^(−jω)^(₀) ^(t), where A₀ is a known value). Instead r(t) is multiplied by thesinusoid and an attenuated version of the input, γr(t). The resultingsignal may be expressed as:

y(t)=A ₀ [z(t)+I(t)+w(t)]e ^(−jω) ^(₀) ^(t) +γI ²(t)+γz²(t)+γw²(t)+2γz(t)I(t)+2γz(t)w(t)+2γw(t)I(t)  (1.2)

[0028] Substituting equation 1.1 for z(t) produces

y(t)=A ₀ [Re{s(t)} cos ω₀ t−Im{s(t)} sin ω₀ t]e ^(−jω) ^(₀) ^(t) +A ₀I(t)e ^(−jω) ^(₀) ^(t) +A ₀ w(t)e ^(−jω) ^(₀) ^(t) +γI ²(t)+γ[Re{s(t)}cos ω₀ t−Im{s(t)} sin ω₀ t] ² +γw ²(t)+2γ[Re{s(t)} cos ω₀ −Im{s(t)} sinω₀ t]I(t)+2γ[Re{s(t)} cos ω₀ t−Im{s(t)} sin ω₀ ]w(t)+2ωw(t)I(t)  (1.3)

[0029] If the attenuation term γ is sufficiently small compared to thesignal amplitude, then y(t) may be approximated as

y(t)≈A ₀ [Re{s(t)} cos ω₀ t−Im{s(t)} sin ω₀ t] ^(−jω) ^(₀) ^(t) +A ₀I(t)e ^(−jω) ₀ ^(t) +A ₀ w(t)e ^(−jω) ^(₀) ^(t) γI ²(t)  (1.4)

[0030] in which the term γI²(t) is retained because it is assumed thatI(t) is of substantially greater power than z(t).

[0031] The signal y(t) then passes through a low pass filter 339, forexample, to produce y_(low)(t), where y_(low)(t) may be approximated as:$\begin{matrix}{{{y_{low}(t)} \approx {{\frac{A_{0}}{2}{s(t)}} + {\gamma \quad {I_{bb}^{2}(t)}} + {w_{bb}(t)}}},} & \text{(1.5)}\end{matrix}$

[0032] in which the term A₀I(t)e^(−jω) ^(₀) ^(t) is assumed to besubstantially removed by the low pass filter and, therefore, has beendropped. In equation (1.5), the term w_(bb)(t) represents a basebandportion of A₀w(t)e^(−jω) ^(₀) ^(t) that remains after passage throughthe low pass filter 339. Assuming I(t) to be generally sinusoidal,γI²(t) may include an offset component (e.g., a DC offset) and abandpass component at twice the center frequency of I(t). The low passfilter may substantially remove the bandpass component of γI²(t) whileleaving essentially unaffected the offset component, represented inequation (1.5) as γI_(bb) ². When for example, I(t) is switched on oroff, the offset component of γI_(bb) ² may be modeled as a stepfunction.

[0033] An A/D converter 341 may be used to generate a discrete signaly_(n) based on the signal y_(low)(t) . Assuming that γI_(bb) ² may berepresented as a step function, the discrete signal y_(n) may berepresented as: $\begin{matrix}{y_{n} \approx {{\frac{A_{0}}{2}{s_{n}(\theta)}} + {c1} + {\left( {{c2} - {c1}} \right)u_{n - \alpha}} + w_{n}}} & \text{(1.6)}\end{matrix}$

[0034] where s_(n)(e) is a discrete model of the baseband signal, θ is avector of unknown signal parameters (e.g., data bits, frequency offset),and w_(n) is a discrete representation of zero-mean additive whiteGaussian noise remaining after passing w(t) through the low pass filter339 and the A/D converter 341. Also, referring now to FIG. 4, u_(n)represents a unit step function that transitions from zero to one at nequals zero, such that c1+(c2−c1)u_(n−α) represents a step function withamplitude of c1 before the step transition and amplitude of c2 after thestep transition, where the step transition occurs at time n equals α.

[0035] Referring again to FIG. 3, the signal y_(n) is provided to theparameter estimator and offset corrector 139. The parameters c1, c2 andα of the step function are estimated, and the estimated parameters thenare used to correct the offset of signal y_(n) to produce an outputsignal that may be represented as: $\begin{matrix}{{\frac{A_{0}}{2}{s_{n}(\theta)}} + {w_{n}.}} & \text{(1.7)}\end{matrix}$

[0036] The parameter estimator 139 may estimate the step functionparameters based on, for example, gradient descent algorithms (e.g., theleast-mean-square algorithm, Newton's method, the steepest descentmethod, and/or any combination of these methods) and/or themaximum-likelihood (ML) method.

[0037] The ML method provides a general method of maximizing thelikelihood of the joint probability density function of the values ofthe received signal vector (y₀, . . . ,y_(N−1)) given an intended signalvector (x₀, . . . ,x_(N−1)) . For the case when the observations areindependent, a combined probability, or likelihood function, may beexpressed as the product of the probability densities of the independentreceived signal vector samples, i.e., p=p(y₀) . . . p(y_(N−1)), where itmay be assumed that each probability density can be modeled as aGaussian density. The likelihood function p is then maximized to findthe optimal parameters using any suitable optimization technique (e.g.,a non-linear optimization technique), such as, for example, theNelder-Mead method (a method based upon the simplex algorithm), thesteepest descent method, the LMS (least-mean-square) method, theLevenberg-Marquardt method (a least squares approach), theDavidson-Fletcher-Powell method (a quasi-Newton based method), or theBroyden-Fletcher-Goldfarb-Shannon method (a quasi-Newton based method),and/or any combination of one or more of these or other optimizationmethods.

[0038] More specifically, a ML estimate of the step function parametersc1, c2, and α can be obtained from the samples y_(n) as described above.For example, we may take the baseband signal model s_(n)(θ) and noisemodel w(n) to have a zero mean, since their means can be incorporatedinto the step function parameters. Using${\frac{A_{0}}{2}{s_{n}(\theta)}} + {c1} + {\left( {{c2} - {c1}} \right)u_{n - \alpha}}$

[0039] as an expression of the mean of the individual values of thereceived signal vector produces the following ML likelihood function ofthe complex observation: $\begin{matrix}{p = {\prod\limits_{n = 0}^{N - 1}\quad {\frac{1}{\sqrt{\pi\sigma}}^{{{{- {|y_{n}}} - {\frac{A_{0}}{2}{s_{n}{(\theta)}}} + {c1} + {{({{c2} - {c1}})}u_{n - \alpha}}}|^{2}{/\sigma^{2}}},}}}} & \text{(1.8)}\end{matrix}$

[0040] which may be simplified to $\begin{matrix}{p = {\left( \frac{1}{\sqrt{\pi\sigma}} \right)^{N}{^{{\frac{1}{\sigma^{2}}\sum\limits_{n = 0}^{N - 1}}|{y_{n} - {\frac{A_{0}}{2}{s_{n}{(\theta)}}} + {c1} + {{({{c2} - {c1}})}u_{n - \alpha}}}|^{2}}.}}} & \text{(1.9)}\end{matrix}$

[0041] To maximize the value of p, it is sufficient to minimize thevalue of $\begin{matrix}{{f = {\sum\limits_{n = 0}^{N - 1}\left| {y_{n} - {\frac{A_{0}}{2}{s_{n}(\theta)}} - {c1} - {\left( {{c2} - {c1}} \right)u_{n - \alpha}}} \right|^{2}}},} & \text{(1.10)}\end{matrix}$

[0042] which is a nonlinear least squares optimization problem.Specifically, the unknown parameters in equation (1.6) can be determinedby solving $\begin{matrix}{{\min\limits_{\theta,{c1},{c2},a}\quad f} = {\sum\limits_{n = 0}^{N - 1}\left| {y_{n} - {\frac{A_{0}}{2}{s_{n}(\theta)}} - {c1} - {\left( {{c2} - {c1}} \right)u_{n - \alpha}}} \middle| {}_{2}. \right.}} & \text{(1.11)}\end{matrix}$

[0043] To determine the solution of (1.11), it is useful to partitionequation (1.11) over a first interval before the transition of thesquare wave and a second interval after the transition of the squarewave. That is, equation (1.11) becomes: $\begin{matrix}{f = {\sum\limits_{n = 0}^{\alpha - 1}\left| {y_{n} - {\frac{A_{0}}{2}{s_{n}(\theta)}} - {c1}} \middle| {}_{2}{+ \sum\limits_{n = \alpha}^{N - 1}} \middle| {y_{n} - {\frac{A_{0}}{2}{s_{n}(\theta)}} - {c2}} \middle| {}_{2}. \right.}} & \text{(1.12)}\end{matrix}$

[0044] Equation (1.12) may be minimized over (θ, c1, c2, α) jointlyusing any of the previously mentioned optimization methods. However,since c1 and c2 are in separate terms of the objective function, theirestimates also may be solved for separately. For example, the estimatefor cl may be obtained analytically by differentiating the portion ofequation (1.12) that corresponds to the first interval with respect toc1, setting the result equal to zero, and solving for c1. The estimateof c2 may be solved by operating upon the portion of equation (1.12)that corresponds to the second interval in like fashion.

[0045] The estimates of c1 and c2 also may be obtained qualitatively.For example, the estimate for c1 may be expressed as a mean of an errorbetween the observation y_(n) and the signal prediction s_(n)(θ) beforethe square wave transitions; similarly, the estimate for c2 may beexpressed as a mean of an error between the observation y_(n) and thesignal prediction s_(n)(θ) after the square wave transitions. Hence, theestimates ĉ1 of c1 and ĉ2 of c2 may be expressed as $\begin{matrix}{{\hat{c}\quad 1} = {\frac{1}{\alpha}{\sum\limits_{n = 0}^{\alpha - 1}\left\lbrack {y_{n} - {\frac{A_{0}}{2}{s_{n}(\theta)}}} \right\rbrack}}} & \text{(1.13)}\end{matrix}$

[0046] and $\begin{matrix}{{\hat{c}2} = {\frac{1}{N - a}{\sum\limits_{n = \alpha}^{N - 1}\quad {\left\lbrack {y_{n} - {\frac{A_{0}}{2}{s_{n}(\theta)}}} \right\rbrack.}}}} & (1.14)\end{matrix}$

[0047] Equations (1.13) and (1.14) then may be substituted back into theobjective function of equation (1.12), resulting in the followingexpression of the objective function: $\begin{matrix}\begin{matrix}{f = \quad {\sum\limits_{n = 0}^{\alpha - 1}\quad \left| {y_{n} - {\frac{1}{\alpha}{\underset{m = 0}{\sum\limits^{\alpha - 1}}y_{m}}} - {\frac{A_{0}}{2}{s_{m}(\theta)}} + {\frac{1}{\alpha}{\underset{m = 0}{\sum\limits^{\alpha - 1}}{\frac{A_{0}}{2}{s_{m}(\theta)}}}}} \middle| {}_{2} + \right.}} \\{\quad {\sum\limits_{n = \alpha}^{N - 1}\left| {y_{n} - {\frac{1}{N - \alpha}{\sum\limits_{m = \alpha}^{N - \alpha}\quad y_{m}}} - {\frac{A_{0}}{2}{s_{n}(\theta)}} + {\frac{1}{N - \alpha}{\sum\limits_{m = \alpha}^{N - \alpha}\quad {\frac{A_{0}}{2}{s_{m}(\theta)}}}}} \middle| {}_{2}. \right.}}\end{matrix} & (1.15)\end{matrix}$

[0048] Now, equation (1.15) is a function of the observation, y, theunknown signal parameters, θ, and the location of the step function, α.All of these parameters may be jointly estimated, for example, usingnon-linear optimization techniques as described above.

[0049] Nevertheless, it also may be possible to estimate only theunknown parameters c1, c2 and α based on expanding and rearranging theterms of equation (1.15) to give $\begin{matrix}\begin{matrix}{f = \quad {\sum\limits_{n = 0}^{N - 1}\left| {y_{n} - {\frac{A_{0}}{2}{s_{n}(\theta)}}} \middle| {}_{2}{{- {g(\alpha)}} -} \right.}} \\{\quad \left. \alpha \middle| {\frac{1}{\alpha}{\underset{n = 0}{\sum\limits^{\alpha}}{\frac{A_{0}}{2}{s_{n}(\theta)}}}} \middle| {}_{2}{- \left( {N - \alpha} \right)} \middle| {\frac{1}{N - \alpha}{\sum\limits_{n = \alpha}^{N - \alpha}\quad {\frac{A_{0}}{2}{s_{n}(\theta)}}}} \middle| {}_{2} + \right.} \\{\quad {{2\quad \alpha \quad {{{Re}\left\lbrack {\frac{1}{\alpha}{\underset{m = 0}{\sum\limits^{\alpha}}y_{m}}} \right\rbrack}^{*}\left\lbrack {\frac{1}{\alpha}{\underset{m = 0}{\sum\limits^{\alpha}}{\frac{A_{0}}{2}{s_{m}(\theta)}}}} \right\rbrack}} +}} \\{\quad {{2\left( {N - \alpha} \right){{{Re}\left\lbrack {\frac{1}{N - \alpha}{\sum\limits_{m = \alpha}^{N - \alpha}y_{m}^{*}}} \right\rbrack}\left\lbrack {\frac{1}{N - \alpha}{\underset{m = \alpha}{\sum\limits^{N - \alpha}}{\frac{A_{0}}{2}{s_{m}(\theta)}}}} \right\rbrack}},}}\end{matrix} & (1.16)\end{matrix}$

[0050] where $\begin{matrix}{{g(\alpha)} = \left. \alpha \middle| {\frac{1}{\alpha}{\underset{n = 0}{\sum\limits^{\alpha}}y_{n}}} \middle| {}_{2}{+ \left( {N - \alpha} \right)} \middle| {\frac{1}{N - \alpha}{\sum\limits_{n = \alpha}^{N - \alpha}y_{n}}} \middle| {}_{2}. \right.} & (1.17)\end{matrix}$

[0051] The first term in equation (1.16) is an expression of mean squareerror between the observation y_(n) and the signal prediction${\frac{A_{0}}{2}{s_{n}(\theta)}},$

[0052] while the second term is explicitly provided by equation (1.17).

[0053] All of the other terms of equation (1.16) involve averages of thesignal prediction $\frac{A_{0}}{2}{s_{n}(\theta)}$

[0054] and may be approximated as zero if the expectation of s_(n)(θ) isapproximately equal to zero, for both before and after the transition ofthe step function. When the expectation of s_(n)(θ) may not beapproximated as zero, the parameters may be estimated using a methodthat retains these terms. For example, the parameters may be estimatedby starting with a seed value of α that may be used to determine anestimate of θ, which, in turn, may be used to produce an estimate of α.The method may be iterative and may continue to alternate betweenestimating α and θ until convergence to a desired degree of precision isachieved.

[0055] Nevertheless, for many signals, such as, for example, a GSMsignal for which the expected value of the underlying binary data streamis zero or approximately zero, it is reasonable to assume that theaverage of the signal prediction s_(n)(θ) is equal or approximatelyequal to zero when taken over a sufficiently large interval. Forexample, the signal prediction may be expressed as: $\begin{matrix}{{{s_{n}(\theta)} = {\sum\limits_{k = 0}^{L}\quad {j^{k}d_{k}h_{n - k}}}},} & (1.18)\end{matrix}$

[0056] where d_(k) is an original binary data sequence with anexpectation of zero, and h_(n) is the combined action of the transmitfilter, the channel filter, and the receive filter. Here the vector ofunknown parameters, θ, can be taken as the complete data sequence d_(k)for all k and the complete filter h_(n) for all n. Because theexpectation of the binary sequence is zero and the binary sequence isindependent of the combined filter, then the expectation of the signalin equation (1.18) is zero. That is,

E{d _(k)}=0 implies E{s _(n)(θ)}=0  (1.19)

[0057] Hence, approximating as zero the expectation of s_(n)(θ), theobjective function of (1.16) becomes: $\begin{matrix}{\left. {f \approx \sum\limits_{n = 0}^{N - 1}} \middle| {y_{n} - {\frac{A_{0}}{2}{s_{n}(\theta)}}} \middle| {}_{2}{- {g(\alpha)}} \right.,} & (1.20)\end{matrix}$

[0058] and equation (1.20) may be minimized by selecting an a thatmaximizes g(α). That is, $\begin{matrix}{{\hat{\alpha} \approx {\arg {\max\limits_{\alpha}{g(\alpha)}}}} = \left. {\arg {\max\limits_{\alpha}\alpha}} \middle| {\frac{1}{\alpha}{\underset{n = 0}{\sum\limits^{\alpha}}y_{n}}} \middle| {}_{2}{+ \left( {N - \alpha} \right)} \middle| {\frac{1}{N - \alpha}{\sum\limits_{n = \alpha}^{N - \alpha}y_{n}}} \middle| {}_{2}. \right.} & (1.21)\end{matrix}$

[0059]FIG. 5 illustrates a method 139 for optimizing equation (1.21)that may be used to implement the system of FIG. 1. A sum of thereceived data is computed and stored (step 510), where the sum may beexpressed as: $\begin{matrix}{Y_{s} = {\sum\limits_{n = 0}^{N - 1}{y_{n}.}}} & (1.22)\end{matrix}$

[0060] Next, temporary parameters Y_(ps) (a partial sum of the data) andg_(max) are set initially to zero, and temporary parameter α_(Test) isset initially equal to one (step 520).

[0061] Using the parameters of step 520, estimates g_(max), â, andŶ_(ps) may be computed iteratively over increasing values of α_(Test)while α_(Test) is less than or equal to N−1, the number of data samples(steps 530). For example, as shown in FIG. 5, estimating g_(max),{circumflex over (a )}, and Ŷ_(ps) may include adding the current dataY_(α) _(Test-1) to the partial sum of the data Y_(ps) to generate anupdated partial sum Y_(ps) (step 533). An updated value for the objectfunction g then may be determined as: $\begin{matrix}{g = {{\frac{1}{\alpha_{Test}}{Y_{ps}}^{2}} + {\frac{1}{N - \alpha_{Test}}{{Y_{s} - Y_{ps}}}^{2}}}} & (1.23)\end{matrix}$

[0062] (step 535). The updated value of g then may be compared to thestored value of g_(max) (step 537), and if updated g is greater thang_(max), then g_(max) may be set equal to updated g as a best currentguess of the maximum of g, {circumflex over (a )} may be set equal toα_(Test), and Ŷ_(ps) may be set equal to Y_(ps) (step 539). Afterupdating the values of g_(max), {circumflex over (a )}, and Ŷ_(ps) (step539) , α_(Test) may be incremented (step 541) and, if α_(Test) is lessthan or equal to N−1 (step 531), then steps 530 may be repeated.

[0063] The estimation of the parameters accomplished in steps 530 alsomay be performed, for example, by decrementing α_(Test) from a highvalue to a low value, or by performing a random selection of α_(Test).Under any of the approaches mentioned, parameters may or may not beestimated for each value of α_(Test).

[0064] Following completion of the iterative process of steps 530, theestimated values of g_(max), {circumflex over (a )}, and Ŷ_(ps) may beused to correct the offset of the data y_(n) (step 550). For example,using {circumflex over (a )} as the estimate of the transition point ofthe step function, the estimate ĉ1 may be expressed using the calculatedvalues as $\begin{matrix}\hat{{{\hat{c}1} = {\frac{1}{\hat{\alpha}}{\hat{Y}}_{ps}}},} & (1.24)\end{matrix}$

[0065] while ĉ2 may be expressed as $\begin{matrix}{{\hat{c}\quad 2} = {\frac{1}{N - \hat{\alpha}}{\left( {Y_{s} - {\hat{Y}}_{ps}} \right).}}} & (1.25)\end{matrix}$

[0066] Optionally, where ĉ1 and ĉ2 as estimated above are equal orapproximately equal (indicating that a step function may not bepresent), then both may be re-estimated as $\begin{matrix}{{\hat{c}1} = {{\hat{c}2} = {\frac{1}{N}{\left( Y_{s} \right).}}}} & (1.26)\end{matrix}$

[0067] Thereafter, to correct the offset of the received data y_(n), theestimated parameters may be used to subtract the step function from eachdata point as follows $\begin{matrix}{y_{n} = \left\{ {\begin{matrix}{{y_{n} - {\hat{c}1}},} & {0 \leq n < \hat{\alpha}} \\{{y_{n} - {\hat{c}2}},} & {\hat{\alpha} \leq n < N}\end{matrix}.} \right.} & (1.27)\end{matrix}$

[0068] Following the correction of the offset, further estimationmethods may be applied to the residual data (y_(n) minus the stepfunction) in order to estimate the remaining unknown signal parametersθ.

[0069] Other implementations are within the scope of the followingclaims.

What is claimed is:
 1. A method comprising: observing a finite durationsignal y_(n) that comprises a representation of a mixture of a desiredsignal and an undesired signal, the undesired signal comprising anoffset component; modeling the offset component of the undesired signalas comprising a step function u defined by unknown step functionparameters; estimating the unknown step function parameters; andadjusting y_(n) based on the estimated step function parameters.
 2. Themethod of claim 1 in which y_(n) comprises a continuous signal.
 3. Themethod of claim 1 in which y_(n) comprises a discrete signal.
 4. Themethod of claim 3 in which: y_(n) includes N samples and comprises adiscrete representation of a mixture of the desired signal, theundesired signal, and a second signal including a generally sinusoidalwaveform and an attenuated version of the desired signal; and y_(n) ismodeled as including a discrete representation of the desired signal anda discrete representation of an offset component related to a square ofthe undesired signal, in which the offset component is modeled ascomprising a step function u defined by unknown step functionparameters.
 5. The method of claim 1 in which the step functionparameters include a first parameter c1 indicative of a first amplitudeof the step function, a second parameter c2 indicative of a secondamplitude of the step function, and a third parameter a indicative of apoint at which the step function transitions from the first amplitude tothe second amplitude, and in which the desired signal is a function ofat least one unknown signal parameter θ.
 6. The method of claim 5 inwhich y_(n) includes N samples and estimating the step functionparameters includes jointly estimating θ, c1, c2, and α(0≦α<N) based ona non-linear optimization method.
 7. The method of claim 5 in whichy_(n) includes N samples and estimating the step function parametersincludes estimating c1, c2, and a (0≦α<N) based on a maximum likelihoodmethod.
 8. The method of claim 7 in which the estimates of the stepfunction parameters comprise: a first estimate □1 of c1 where${{\hat{c}1} \approx {\frac{1}{\hat{\alpha}}{\sum\limits_{n = 0}^{\hat{\alpha} - 1}y_{n}}}};$

a second estimate □2 of c2 where${{\hat{c}2} \approx {\frac{1}{N - \hat{\alpha}}{\sum\limits_{n = \hat{\alpha}}^{N - 1}y_{n}}}};{and}$

a third estimate {circumflex over (a )} of α where${\hat{\alpha} \approx \quad {{\arg \quad {\max\limits_{\alpha_{Test}}{\frac{1}{\alpha_{Test}}{{\sum\limits_{n = 0}^{\alpha_{Test} - 1}y_{n}}}^{2}}}} + {\frac{1}{N - \alpha_{Test}}{{\sum\limits_{n = \alpha_{Test}}^{N - 1}y_{n}}}^{2}}}},{0 \leq \alpha_{Test} < {N - 1.}}$


9. The method of claim 8 in which determining {circumflex over (a )}comprises: selecting more than one value of α_(Test); determining avalue g for each selected value of α_(Test) where${g \approx {{\frac{1}{\alpha_{Test}}{{\sum\limits_{n = 0}^{\alpha_{Test} - 1}y_{n}}}^{2}} + {\frac{1}{N - \alpha_{Test}}{{\sum\limits_{n = \alpha_{Test}}^{N - 1}y_{n}}}^{2}}}};$

selecting from among the determined values of g one or more maximumvalues of g; and selecting {circumflex over (a )} based on the one ormore maximum values of g.
 10. The method of claim 9 in which less than Nvalues of α_(Test) are selected.
 11. The method of claim 7 in whichestimating the step function parameters further comprises jointlyestimating θ, c1, c2, and α based on a non-linear minimization of afunction comprising${f\left( {\theta,{c1},{c2},\alpha} \right)} \approx {{\sum\limits_{n = 0}^{\alpha - 1}{{y_{n} - {\frac{1}{\alpha}{\sum\limits_{m = 0}^{\alpha - 1}y_{m}}} - {\frac{A_{0}}{2}{s_{m}(\theta)}} + {\frac{1}{\alpha}{\sum\limits_{m = 0}^{\alpha - 1}{\frac{A_{0}}{2}{s_{m}(\theta)}}}}}}^{2}} + {\sum\limits_{n = \alpha}^{N - 1}{{y_{n} - {\frac{1}{N - \alpha}{\sum\limits_{m = \alpha}^{N - \alpha}y_{m}}} - {\frac{A_{0}}{2}{s_{n}(\theta)}} + {\frac{1}{N - \alpha}{\sum\limits_{m = \alpha}^{N - \alpha}{\frac{A_{0}}{2}{s_{m}(\theta)}}}}}}^{2}}}$

in which the minimization is performed by computing one or more of thederivatives of f.
 12. A system comprising: an observation circuitstructured and arranged to observe a finite duration signal y_(n) thatcomprises a discrete representation of a mixture of a desired signal andan undesired signal, the undesired signal comprising an offsetcomponent; a modeling circuit structured and arranged to model theoffset component of the undesired signal as comprising a step function udefined by unknown step function parameters; an estimating circuitstructured and arranged to determine estimated step function parametersrepresentative of the unknown step function parameters; and a correctioncircuit structured and arranged to correct y_(n) based on the estimatedstep function parameters.
 13. The system of claim 12 in which y_(n)comprises a continuous signal.
 14. The system of claim 12 in which y_(n)comprises a discrete signal.
 15. The system of claim 14 in which: y_(n)includes N samples and comprises a discrete representation of a mixtureof the desired signal, the undesired signal, and a second signalincluding a generally sinusoidal waveform and an attenuated version ofthe desired signal; and the modeling circuit is further configured tomodel y_(n) as comprising a discrete representation of the desiredsignal and also a discrete representation of an offset component relatedto a square of the undesired signal.
 16. The system of claim 12 in whichthe unknown step function parameters include a first parameter c1indicative of a first amplitude of the step function, a second parameterc2 indicative of a second amplitude of the step function, and a thirdparameter α indicative of a point at which the step function transitionsfrom the first amplitude to the second amplitude, and in which thedesired signal is a function of at least one unknown signal parameter θ.17. The system of claim 16 in which y_(n) includes N samples and theestimating circuit is further configured to estimate jointly the unknownstep function parameters θ, c1, c2, and α (0≦α<N) based on a non-linearoptimization method.
 18. The system of claim 16 in which y_(n) includesN samples and the estimating circuit is further configured to estimatethe unknown step function parameters c1, c2, and α (0≦α<N) based on amaximum likelihood method.
 19. The system of claim 18 in which theestimating circuit is further configured to estimate the unknown stepfunction parameters as comprising: a first estimate □1 of c1 where${{\hat{c}\quad 1} \approx {\frac{1}{\hat{\alpha}}{\sum\limits_{n = 0}^{\hat{\alpha} - 1}y_{n}}}};$

a second estimate □2 of c2 where${{\hat{c}2} \approx {\frac{1}{N - \hat{\alpha}}{\sum\limits_{n = \hat{\alpha}}^{N - 1}y_{n}}}};\quad {and}$

a third estimate {circumflex over (a )} of α where${\hat{\alpha} \approx \quad {{\arg \quad {\max\limits_{\alpha_{Test}}{\frac{1}{\alpha_{Test}}{{\sum\limits_{n = 0}^{\alpha_{Test} - 1}y_{n}}}^{2}}}} + {\frac{1}{N - \alpha_{Test}}{{\sum\limits_{n = \alpha_{Test}}^{N - 1}y_{n}}}^{2}}}},{0 \leq \alpha_{Test} < {N.}}$


20. The system of claim 19 in which the estimating circuit is furtherconfigured to determine {circumflex over (a )} based on the following:selecting more than one value of α_(Test); determining a value g foreach selected value of α_(Test) where${g \approx {{\frac{1}{\alpha_{Test}}{{\sum\limits_{n = 0}^{\alpha_{Test} - 1}y_{n}}}^{2}} + {\frac{1}{N - \alpha_{Test}}{{\sum\limits_{n = \alpha_{Test}}^{N - 1}y_{n}}}^{2}}}};$

selecting from among the determined values of g one or more maximumvalues of g; and selecting {circumflex over (a )} based on the one ormore maximum values of g.
 21. The system of claim 20 in which less thanN values of α_(Test) are selected by the estimating circuit.
 22. Thesystem of claim 18 in which the estimating circuit is further configuredto estimate jointly the unknown step function parameters θ, c1, c2, andα based on non-linear minimization of a function comprising${f\left( {\theta,{c1},{c2},\alpha} \right)} \approx {{\sum\limits_{n = 0}^{\alpha - 1}{{y_{n} - {\frac{1}{\alpha}{\sum\limits_{m = 0}^{\alpha - 1}y_{m}}} - {\frac{A_{0}}{2}{s_{m}(\theta)}} + {\frac{1}{\alpha}{\sum\limits_{m = 0}^{\alpha - 1}{\frac{A_{0}}{2}{s_{m}(\theta)}}}}}}^{2}} + {\sum\limits_{n = \alpha}^{N - 1}{{y_{n} - {\frac{1}{N - \alpha}{\sum\limits_{m = \alpha}^{N - \alpha}y_{m}}} - {\frac{A_{0}}{2}{s_{n}(\theta)}} + {\frac{1}{N - \alpha}{\sum\limits_{m = \alpha}^{N - \alpha}{\frac{A_{0}}{2}{s_{m}(\theta)}}}}}}^{2}}}$

in which minimization is performed by computing one or more of thederivatives of f.
 23. A computer program stored on a computer readablemedium or a propagated signal, the computer program comprising: anobservation code segment configured to cause a computer to observe afinite duration signal y_(n) that comprises a representation of amixture of a desired signal and an undesired signal, the undesiredsignal comprising an offset component; a modeling code segmentconfigured to cause the computer to model the offset component of theundesired signal as comprising a step function u defined by unknown stepfunction parameters; an estimating code segment configured to cause thecomputer to determine estimated step function parameters representativeof the unknown step function parameters; and a correcting code segmentconfigured to cause the computer to correct y_(n) based on the estimatedstep function parameters.
 24. The computer program of claim 23 in whichy_(n) comprises a continuous signal.
 25. The computer program of claim23 in which y_(n) comprises a discrete signal.
 26. The computer programof claim 25 in which: y_(n) includes N samples and comprises a discreterepresentation of a mixture of the desired signal, the undesired signal,and a second signal including a generally sinusoidal waveform and anattenuated version of the desired signal; a modeling code segmentconfigured to cause the computer to model y_(n) as comprised of s_(n), adiscrete representation of the desired signal and also a discreterepresentation of an offset component related to a square of theundesired signal, in which the modeling code segment also is configuredto cause the computer to model the offset component as comprising a stepfunction u defined by unknown step function parameters.
 27. The computerprogram of claim 23 in which the unknown step function parametersinclude a first parameter c1 indicative of a first amplitude of the stepfunction, a second parameter c2 indicative of a second amplitude of thestep function, and a third parameter α indicative of a point at whichthe step function transitions from the first amplitude to the secondamplitude, and in which the desired signal is a function of at least oneunknown signal parameter θ.
 28. The computer program of claim 27 inwhich y_(n) includes N samples and the estimating code segment furthercomprises a non-linear optimization code segment configured to cause thecomputer program to estimate jointly the unknown step functionparameters θ, c1, c2, and α (0≦α<N) based on a non-linear optimizationmethod.
 29. The computer program of claim 27 in which y_(n) includes Nsamples and the estimating code segment further comprises a maximumlikelihood code segment configured to cause the computer to estimate theunknown step function parameters c1, c2, and α (0≦α<N) based on amaximum likelihood method.
 30. The computer program of claim 29 in whichthe maximum likelihood code segment is further configured to cause thecomputer to estimate the unknown step function parameters as comprising:a first estimate □1 of c1 where${{\hat{c}1} \approx {\frac{1}{\hat{\alpha}}{\sum\limits_{n = 0}^{\hat{\alpha} - 1}y_{n}}}};$

a second estimate □2 of c2 where${{\hat{c}2} \approx {\frac{1}{N - \hat{\alpha}}{\sum\limits_{n = \hat{\alpha}}^{N - 1}y_{n}}}};{and}$

a third estimate {circumflex over (a )} of α where${\hat{\alpha} \approx \quad {{\arg \quad {\max\limits_{\alpha_{Test}}{\frac{1}{\alpha_{Test}}{{\sum\limits_{n = 0}^{\alpha_{Test} - 1}y_{n}}}^{2}}}} + {\frac{1}{N - \alpha_{Test}}{{\sum\limits_{n = \alpha_{Test}}^{N - 1}y_{n}}}^{2}}}},{0 \leq \alpha_{Test} < {N.}}$


31. The computer program of claim 30 in which the maximum likelihoodcode segment further comprises: a selecting code segment configured tocause the computer to select more than one value of α_(Test); acalculating code segment configured to cause the computer to determine avalue g for each selected value of α_(Test) where${g \approx {{\frac{1}{\alpha_{Test}}{{\sum\limits_{n = 0}^{\alpha_{Test} - 1}y_{n}}}^{2}} + {\frac{1}{N - \alpha_{Test}}{{\sum\limits_{n = \alpha_{Test}}^{N - 1}y_{n}}}^{2}}}};$

a g_max code segment configured to cause the computer to select fromamong the determined values of g one or more maximum values of g; and an{circumflex over (a )}_max code segment configured to cause the computerto select {circumflex over (a )} based on the one or more maximum valuesof g.
 32. The computer program of claim 31 in which the selecting codesegment is further configured to cause the computer to select less thanN values of α_(Test).
 33. The computer program of claim 29 in which themaximum likelihood code segment is further configured to cause thecomputer to estimate jointly the unknown step function parameters θ, c1,c2, and α based on non-linear minimization of a function comprising${f\left( {\theta,{c1},{c2},\alpha} \right)} \approx {{\sum\limits_{n = 0}^{\alpha - 1}{{y_{n} - {\frac{1}{\alpha}{\sum\limits_{m = 0}^{\alpha - 1}y_{m}}} - {\frac{A_{0}}{2}{s_{m}(\theta)}} + {\frac{1}{\alpha}{\sum\limits_{m = 0}^{\alpha - 1}{\frac{A_{0}}{2}{s_{m}(\theta)}}}}}}^{2}} + {\sum\limits_{n = \alpha}^{N - 1}{{y_{n} - {\frac{1}{N - \alpha}{\sum\limits_{m = \alpha}^{N - \alpha}y_{m}}} - {\frac{A_{0}}{2}{s_{n}(\theta)}} + {\frac{1}{N - \alpha}{\sum\limits_{m = \alpha}^{N - \alpha}{\frac{A_{0}}{2}{s_{m}(\theta)}}}}}}^{2}}}$

in which the minimization is performed by computing one or more of thederivatives of f.
 34. A processor which: observes a finite durationsignal y_(n) that comprises a representation of a mixture of a desiredsignal and an undesired signal, the undesired signal comprising anoffset component; models the offset component of the undesired signal asa step function u defined by unknown step function parameters;determines estimated step function parameters; and corrects the signaly_(n) based on the estimated step function parameters.
 35. The processorof claim 34 in which y_(n) comprises a continuous signal.
 36. Theprocessor of claim 34 in which y_(n) comprises a discrete signal. 37.The processor of claim 36 in which: y_(n) includes N samples andcomprises a discrete representation of a mixture of the desired signal,the undesired signal, and a second signal including a generallysinusoidal waveform and an attenuated version of the desired signal; andy_(n) is modeled as including a discrete representation of the desiredsignal and also a discrete representation of an offset component relatedto a square of the undesired signal, and models the offset component asa step function u defined by unknown step function parameters.
 38. Theprocessor of claim 34 in which y_(n) includes N samples and the unknownstep function parameters include a first parameter c1 indicative of afirst amplitude of the step function, a second parameter c2 indicativeof a second amplitude of the step function, and a third parameter α(0≦α<N) indicative of a point at which the step function transitionsfrom the first amplitude to the second amplitude.
 39. The processor ofclaim 38 in which the processor estimates the unknown step functionparameters as comprising: a first estimate □1 of c1 where${{\hat{c}1} \approx {\frac{1}{\hat{\alpha}}{\sum\limits_{n = 0}^{\hat{\alpha} - 1}y_{n}}}};$

a second estimate □2 of c2 where${{\hat{c}2} \approx {\frac{1}{N - \hat{\alpha}}{\sum\limits_{n = \hat{\alpha}}^{N - 1}y_{n}}}};$

and a third estimate {circumflex over (a )} of α where$\hat{\alpha} \approx {{\arg \quad {\max\limits_{\alpha_{Test}}{\frac{1}{\alpha_{Test}}{{\sum\limits_{n = 0}^{\alpha_{Test} - 1}y_{n}}}^{2}}}} + {\frac{1}{N - \alpha_{Test}}{{{\sum\limits_{n = \alpha_{Test}}^{N - 1}y_{n}}}^{2}.}}}$